///////////////////////////////////////////////////////////////////////////
// C++ code generated with wxFormBuilder (version Apr 21 2008)
// http://www.wxformbuilder.org/
//
// PLEASE DO "NOT" EDIT THIS FILE!
///////////////////////////////////////////////////////////////////////////

#include "MainFrameProj.h"

///////////////////////////////////////////////////////////////////////////

MyMainFrame::MyMainFrame( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
{
	this->SetSizeHints( wxDefaultSize, wxDefaultSize );
	
	m_statusBar1 = this->CreateStatusBar( 1, wxST_SIZEGRIP, wxID_ANY );
	m_menubar1 = new wxMenuBar( 0 );
	m_menu1 = new wxMenu();
	wxMenuItem* m_menuItem1;
	m_menuItem1 = new wxMenuItem( m_menu1, wxID_ANY, wxString( wxT("Open Image Pair") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu1->Append( m_menuItem1 );
	
	wxMenuItem* m_menuItem2;
	m_menuItem2 = new wxMenuItem( m_menu1, wxID_ANY, wxString( wxT("Close Images") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu1->Append( m_menuItem2 );
	
	m_menu1->AppendSeparator();
	
	wxMenuItem* m_menuItem3;
	m_menuItem3 = new wxMenuItem( m_menu1, wxID_ANY, wxString( wxT("Exit") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu1->Append( m_menuItem3 );
	
	m_menubar1->Append( m_menu1, wxT("File") );
	
	m_menu2 = new wxMenu();
	wxMenuItem* m_menuItem7;
	m_menuItem7 = new wxMenuItem( m_menu2, wxID_ANY, wxString( wxT("Show Image Pair in wx") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu2->Append( m_menuItem7 );
	
	wxMenuItem* m_menuItem8;
	m_menuItem8 = new wxMenuItem( m_menu2, wxID_ANY, wxString( wxT("Show Image Pair in CV") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu2->Append( m_menuItem8 );
	
	m_menubar1->Append( m_menu2, wxT("Display") );
	
	m_menu3 = new wxMenu();
	wxMenuItem* m_menuItem5;
	m_menuItem5 = new wxMenuItem( m_menu3, wxID_ANY, wxString( wxT("Reduce Contrast") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu3->Append( m_menuItem5 );
	
	wxMenuItem* m_menuItem6;
	m_menuItem6 = new wxMenuItem( m_menu3, wxID_ANY, wxString( wxT("Edge Detect") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu3->Append( m_menuItem6 );
	
	m_menubar1->Append( m_menu3, wxT("Pre Process") );
	
	m_menu4 = new wxMenu();
	wxMenuItem* m_menuItem4;
	m_menuItem4 = new wxMenuItem( m_menu4, wxID_ANY, wxString( wxT("About") ) , wxEmptyString, wxITEM_NORMAL );
	m_menu4->Append( m_menuItem4 );
	
	m_menubar1->Append( m_menu4, wxT("Help") );
	
	this->SetMenuBar( m_menubar1 );
	
	
	// Connect Events
	this->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_LEFT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_MIDDLE_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_MIDDLE_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_MOTION, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_MIDDLE_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_RIGHT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_ENTER_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Connect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	m_statusBar1->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_LEFT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_MIDDLE_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_MIDDLE_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_MOTION, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_MIDDLE_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_RIGHT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_ENTER_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Connect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	this->Connect( m_menuItem1->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::OpenImagePair ) );
	this->Connect( m_menuItem2->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::CloseImagePair ) );
	this->Connect( m_menuItem3->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::Exit ) );
	this->Connect( m_menuItem7->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ShowImagesWX ) );
	this->Connect( m_menuItem8->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ShowImagesCV ) );
	this->Connect( m_menuItem5->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ReduceContrast ) );
	this->Connect( m_menuItem6->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::EdgeDetect ) );
	this->Connect( m_menuItem4->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::OnAbout ) );
}

MyMainFrame::~MyMainFrame()
{
	// Disconnect Events
	this->Disconnect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_LEFT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_MIDDLE_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_MIDDLE_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_MOTION, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_MIDDLE_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_RIGHT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_ENTER_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	this->Disconnect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( MyMainFrame::OnMotion ) );
	m_statusBar1->Disconnect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_LEFT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_MIDDLE_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_MIDDLE_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_MOTION, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_MIDDLE_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_RIGHT_DCLICK, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_LEAVE_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_ENTER_WINDOW, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	m_statusBar1->Disconnect( wxEVT_MOUSEWHEEL, wxMouseEventHandler( MyMainFrame::OnMotion ), NULL, this );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::OpenImagePair ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::CloseImagePair ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::Exit ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ShowImagesWX ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ShowImagesCV ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::ReduceContrast ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::EdgeDetect ) );
	this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MyMainFrame::OnAbout ) );
}
